<template>
  <div> 

  </div>
</template>
<script lang="ts" setup >
    // let flag:boolean = true;
    // let const var 
    //  变量名：数据类型 = 值
    // let str1 :string="这是一个Stirng";
    //声明类型 和值要匹配不匹配会导致报错 
    // console.log(flag);
    // let und :undefined  = undefined;
    // let ull : null = null;
    // 语法糖 let 变量名：数据类型[]=[数据类型，数据类型，数据类型]
    // let arr1 :number[] = [10,2,3,4,5,6];
    // console.log(arr1)
    // 泛型写法
    // 语法 :let 变量名 Array<数据类型> = 数据（数据类型）
    // let Arr2:Array<number> = [100,200,300];
    // 元组写法 数组的里面的数据同时确定个数和类型
    // let 变量名:[数组中每个数据的类型]
    // （确定多少个类型，  数组中就必须有多少对应类型的值）
    // let arr3:[string , number , boolean] = ["金老师" ,18 , true];
    // console.log(arr3)
    // console.log(Arr2)
    // 枚举写法
    // enum 枚举类型直接当做类型用  {类型元素}
    // 也是一个对象可以取值
    // 里面的类型元素会自动生产一个编号 一次按照顺序递增
    // 递增的顺序由第一个数字决定
    // 
    // enum Color {
    //   red = 5,
    //   green,
    //   blue
    // }
    // let color :Color = Color.red;
    // console.log(color)
    // console.log(Color)
    // web = 1;
    // console.log(web)
    // TS的里面不用let之类的声明直接报错、
    // let a:number =11;
    // any类型 不确定类型
    let str:any = 100;
    let num:any ="100";
    console.log(str);
    console.log(num);
    let vd :void = undefined;//值的定义只能是undefined
    // object 类型
    // function 函数名(入参：入参类型)：整个函数的结果类型 return的类型
    // function getyi(obj:object):object{
    //   console.log(obj)//obj 必须是object
    //   return {
    //     name:"1"
    //   }
    //   // (obj:any)
    // }
    // console.log(getyi({name:1}));
    // 联合类型 值的范围可以是多个类型 
    // let str :number|string ="1";
    // function getOne(str:number|string):string{
    //   return str.toString()
    // }
    // TS 类型声明 接口类
    // 类型断言 类型推断
    // 1.<类型>变量名 推断类型
    // 2.（变量名 as 类型）
    // 入参是数字或者是字符串 该函数的return 结果必须是数字
    // function ajie(str:number | string):number{
    //   // if(typeof(str) == "string" && str.length != 0)
    //   if((<string>str).length){
    //       //  console.log(str ,"进来了")
    //       // 必须return string的length
    //       return (str as string).length;
    //   }else{
    //     console.log(str)
    //     console.log(str.length)
    //     return str.toString().length
    //   }
    // }
    //   // ajie("张的没我帅")
    // ajie(5201314);
    // //  ajie("");

</script>